package jpa.entitys.promis.construction;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the COST_BUDGET database table.
 * 
 */
@Entity
@Table(name="COST_BUDGET")
@NamedQueries({
    @NamedQuery(name = "CostBudget.findAll", query = " SELECT c FROM CostBudget c "),
    @NamedQuery(name = "CostBudget.findById", query = " SELECT c FROM CostBudget c WHERE c.id = :Id "),
    @NamedQuery(name = "CostBudget.findBySapPoNo", query = " SELECT c FROM CostBudget c WHERE c.syncExternalRefNo = :syncExternalRefNo And c.status = :status "),
    @NamedQuery(name = "CostBudget.findByStaging", query = " SELECT c FROM CostBudget c WHERE c.syncIsstaging = :syncIsstaging")
})
public class CostBudget extends jpa.entitys.common.CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private CostBudgetPK id;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="BUDGET_DATE")
	private Date budgetDate;

	@Column(name="BUDGET_TYPE", length=1)
	private String budgetType;

	@Column(name="CONSTRUCTION_BUDGET", precision=22)
	private BigDecimal constructionBudget;

	@Column(name="CREATED_BY")
	private String createdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(length=300)
	private String description;

	@Column(name="LAND_BUDGET", precision=22)
	private BigDecimal landBudget;

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(name="LINK_FILE_ID", precision=22)
	private BigDecimal linkFileId;

	@Column(name="LINK_ID", precision=22)
	private BigDecimal linkId;

	@Column(name="PHASE_CODE", length=30)
	private String phaseCode;

	@Column(name="PROMOTION_BUDGET", precision=22)
	private BigDecimal promotionBudget;

	@Column(name="REF_COMPANY", length=30)
	private String refCompany;

	@Column(name="REF_NUMBER", precision=22)
	private BigDecimal refNumber;

	@Column(name="REF_SERIES", length=30)
	private String refSeries;

	@Column(name="REF_TYPE", length=30)
	private String refType;

	@Column(length=3000)
	private String remarks;

	@Column(name="SEQ_NO", precision=22)
	private BigDecimal seqNo;

	@Column(name="SERVICES_BUDGET", precision=22)
	private BigDecimal servicesBudget;

	@Column(length=1)
	private String status;

	@Column(name="SYNC_CREATEDBY", length=100)
	private String syncCreatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY", length=100)
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO", length=100)
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSTAGING", length=1)
	private String syncIsstaging;

	@Column(name="SYNC_ISSYNC", length=1)
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY", length=100)
	private String syncUpdatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="TOTAL_BUDGET", precision=22)
	private BigDecimal totalBudget;

    public CostBudget() {
    }

	public CostBudgetPK getId() {
		return this.id;
	}

	public void setId(CostBudgetPK id) {
		this.id = id;
	}
	
	public Date getBudgetDate() {
		return this.budgetDate;
	}

	public void setBudgetDate(Date budgetDate) {
		this.budgetDate = budgetDate;
	}

	public String getBudgetType() {
		return this.budgetType;
	}

	public void setBudgetType(String budgetType) {
		this.budgetType = budgetType;
	}

	public BigDecimal getConstructionBudget() {
		return this.constructionBudget;
	}

	public void setConstructionBudget(BigDecimal constructionBudget) {
		this.constructionBudget = constructionBudget;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public BigDecimal getLandBudget() {
		return this.landBudget;
	}

	public void setLandBudget(BigDecimal landBudget) {
		this.landBudget = landBudget;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public BigDecimal getLinkFileId() {
		return this.linkFileId;
	}

	public void setLinkFileId(BigDecimal linkFileId) {
		this.linkFileId = linkFileId;
	}

	public BigDecimal getLinkId() {
		return this.linkId;
	}

	public void setLinkId(BigDecimal linkId) {
		this.linkId = linkId;
	}

	public String getPhaseCode() {
		return this.phaseCode;
	}

	public void setPhaseCode(String phaseCode) {
		this.phaseCode = phaseCode;
	}

	public BigDecimal getPromotionBudget() {
		return this.promotionBudget;
	}

	public void setPromotionBudget(BigDecimal promotionBudget) {
		this.promotionBudget = promotionBudget;
	}

	public String getRefCompany() {
		return this.refCompany;
	}

	public void setRefCompany(String refCompany) {
		this.refCompany = refCompany;
	}

	public BigDecimal getRefNumber() {
		return this.refNumber;
	}

	public void setRefNumber(BigDecimal refNumber) {
		this.refNumber = refNumber;
	}

	public String getRefSeries() {
		return this.refSeries;
	}

	public void setRefSeries(String refSeries) {
		this.refSeries = refSeries;
	}

	public String getRefType() {
		return this.refType;
	}

	public void setRefType(String refType) {
		this.refType = refType;
	}

	public String getRemarks() {
		return this.remarks;
	}

	public void setRemarks(String remarks) {
		this.remarks = remarks;
	}

	public BigDecimal getSeqNo() {
		return this.seqNo;
	}

	public void setSeqNo(BigDecimal seqNo) {
		this.seqNo = seqNo;
	}

	public BigDecimal getServicesBudget() {
		return this.servicesBudget;
	}

	public void setServicesBudget(BigDecimal servicesBudget) {
		this.servicesBudget = servicesBudget;
	}

	public String getStatus() {
		return this.status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIsstaging() {
		return this.syncIsstaging;
	}

	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public BigDecimal getTotalBudget() {
		return this.totalBudget;
	}

	public void setTotalBudget(BigDecimal totalBudget) {
		this.totalBudget = totalBudget;
	}

}